<?xml version="1.0"?>
<!--
  ~ Copyright 2004-2012 ICEsoft Technologies Canada Corp.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the
  ~ License. You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an "AS
  ~ IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
  ~ express or implied. See the License for the specific language
  ~ governing permissions and limitations under the License.
  -->

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:c="http://java.sun.com/jsp/jstl/core"
                xmlns:ace="http://www.icefaces.org/icefaces/components"
                xmlns:ice="http://www.icesoft.com/icefaces/component"
                xmlns:icecore="http://www.icefaces.org/icefaces/core"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                template="/resources/templates/content-template.xhtml">

    <ui:param name="title" value="#{msgs[progressBarBean.title]}"/>
    <ui:param name="description" value="#{msgs[progressBarBean.description]}"/>
    <ui:param name="subMenuTitle" value="#{msgs[progressBarBean.subMenuTitle]}"/>
    <ui:param name="subMenuLinks" value="#{progressBarBean.subMenuLinks}"/>
    <ui:param name="resourceValue" value="#{progressBarBean.exampleResource}"/>

    <ui:param name="wikiResources" value="#{progressBarResources.wikiResources}"/>
    <ui:param name="tldResources" value="#{progressBarResources.tldResources}"/>

    <ui:define name="example">
        <!--preload dataTable resources so that the other pages using the dataTable component will work as expected-->
        <icecore:config mandatoryResource="dataTable"/>

        <h:form id="form">
            <ace:panel id="progressContent">
                <h:panelGrid width="100%" style="text-align: center;">
                    <ace:progressBar id="progressBar" value="#{progressBarBean.progressValue}"/>
                    <h:panelGrid style="font-weight: bold;" width="100%">
                        <h:outputText id="msg" value="#{progressBarBean.message}"/>
                        <h:panelGrid style="margin-left: auto; margin-right: auto; height: 100px; width: 100%">
                            <h:graphicImage id="img"
											value="#{progressBarBean.currentImage.path}"
                                            alt="#{progressBarBean.currentImage.description}"/>
                        </h:panelGrid>

                        <h:outputText id="desc" value="#{progressBarBean.currentImage.description}"/>
                    </h:panelGrid>
                </h:panelGrid>
            </ace:panel>

            <h:panelGrid width="100%" columns="2">
                <h:commandLink id="previous"
							   actionListener="#{progressBarBean.returnToPreviousImage}"
                               style="display: block; float: left;">
                    <h:panelGrid columns="2">
                        <h:graphicImage value="#{progressBarBean.arrowBackwardImage.path}"
                                        alt="#{progressBarBean.arrowBackwardImage.description}"/>
                        <h:outputText value="PREVIOUS" style="color: #0099ff;"/>
                    </h:panelGrid>
                    <f:ajax execute="@this" render="progressContent"/>
                </h:commandLink>

                <h:commandLink id="next"
							   actionListener="#{progressBarBean.proceedToNextImage}"
                               style="display: block; float: right;">
                    <h:panelGrid columns="2">
                        <h:outputText value="NEXT" style="color: #0099ff;"/>
                        <h:graphicImage value="#{progressBarBean.arrowForwardImage.path}"
                                        alt="#{progressBarBean.arrowForwardImage.description}"/>
                    </h:panelGrid>
                    <f:ajax execute="@this" render="progressContent"/>
                </h:commandLink>
            </h:panelGrid>
        </h:form>
    </ui:define>
</ui:composition>